package vip.xiaomoli.nurse.annotation;

import java.lang.annotation.*;

/**
 * 方法入参类型：Set<Object>, Object为原生数据类型包装类或POJO（需重写hashCode和equals方法）
 * 方法出参类型：Map<Object, 待注入字段类型>, Object为入参Set中的元素
 */
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.FIELD})
public @interface Inject {

    Class<?> apiClass();

    String methodName();

    /**
     * 如果方法入参为Set<原生数据类型>，则配置【待注入类中的对应字段名】
     * 如果方法入参为Set<POJO>，则配置【POJO中的字段名:待注入类中的对应字段名】
     */
    String[] paramFieldName();

}
